package com.bigpang.framework.docedit.word.util;

import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.usermodel.*;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

/**
 * @Author YongQiang
 * @Date 2021/4/8 13:42
 * @Version 1.0
 */
public class WordReadUtil {


    /**
     * 读表格
     * 每一个回车符代表一个段落，所以对于表格而言，每一个单元格至少包含一个段落，每行结束都是一个段落。
     * @param name
     */
    public static List<Table> readTables(String name) throws IOException {
        File file = new File(name);
        InputStream in=new FileInputStream(file);
        HWPFDocument document=new HWPFDocument(in);
        Range range = document.getRange();
        //遍历range范围内的table。
        TableIterator tableIter = new TableIterator(range);
        List<Table> tables =new ArrayList<>();
        while (tableIter.hasNext()) {
            Table table = tableIter.next();
            tables.add(table);
        }
        return tables;
    }
}
